<?php

require_once("dao/Dao.php");
require_once("dao/FacturePonctuelleDao.php");
require_once("dao/MailDao.php");
if ($_SESSION['niveauAuth']<>'0'){
/**
 * Envoi mail facture ponctuelle
 * @author Arthur
 */
//récupération de la facture
$facture = FacturePonctuelleDao::searchById(filter_input(INPUT_GET, 'id-facture'), true);
//génération du pdf si null
if(empty($facture->pdf)){
    require_once("utils/pdf.inc.php");
    $facture = genererPdfFacturePonctuelle($facture);
}
$monthFolder = substr(str_replace("facture_temp/","",$facture->pdf),0,6);
$targetFile = str_replace("facture_temp", "facture", $facture->pdf);
//création du répertoire parent
if(!file_exists(__DIR__.'/../facture/'.$monthFolder)){
    mkdir(__DIR__.'/../facture/'.$monthFolder);
}
//déplacement du pdf
if (rename(__DIR__.'/../'.$facture->pdf, __DIR__.'/../'.$targetFile)) {
    //mise à jour du champs pdf
    $q = "UPDATE factures_ponctuelles SET pdf = '$targetFile' WHERE id = $facture->id;";
    //persist
    FacturePonctuelleDao::exec($q);
} else {
    throw new Exception('Une erreur est survenue au déplacement du pdf');
}


//envoi par mail
if (MailDao::EnvoiMailFacturePonctuelle($facture)) {
    //mise à jour de la date d'envoi du mail
    $q = "UPDATE factures_ponctuelles SET date_envoi_mail = CURRENT_TIMESTAMP WHERE id = $facture->id";
    //persist
    FacturePonctuelleDao::exec($q);
} else {
    throw new Exception('une erreur s\'est produite lors de l\'envoi du mail au client');
}

redirect('detail-facture-ponctuelle?id-facture=' . $facture->id);
}
else {
	redirect("home-admin");
}

